[Chrome] プルリクエストのマージ先を見やすく表示して、マージ先を間違える事故の発生を防ぐ! (GitHub)
Gitブランチ運用を次のようにすることがあります。
- masterブランチ:本番環境にデプロイする
- stagingブランチ:ステージング環境にデプロイする
- developブランチ:開発環境にデプロイする
リリース時に各ブランチからプルリクエストを出してマージしますが、その際のマージ先指定を間違えてしまい、developからmasterにマージする事故が発生しました。
- 通常時
- developブランチ → stagingブランチ
- stagingブランチ → masterブランチ
- 事故発生時
- developブランチ → masterブランチ
プルリクエスト出す側もレビューする側も気づいていませんでした。プルリクエスト画面の上部にマージ元とマージ先は常時表示されています。
……地味に薄いです。
GitHubで「特定ブランチからのプルリクエストエストのみできる」な機能はないので(無いですよね?)、人間がなんとかする方針で対策を考えていたところ、いい感じの拡張機能を見つけました。
merge gatekeeper for github
とてもシンプルな機能で、マージボタンの近くに大きく表示されます。 そのため、マージ直前に「おっとマージ先ブランチは合っているかな?」と確認するきっかけになります。視認性もバッチリです。
さいごに
他にもGitHub関連で便利な拡張機能があるので、ぜひ試してみてください。